# Standard ROS header with stamp and coordinate frame ID
std_msgs/Header header

# Unique name of the UAV
string drone_name
# Name of the UAV model
string drone_type
# The current estimated UAV's mass as a string for display purposes
string drone_mass

# The current mission
string mission_name
# The current mission work mode
uint16 work_mode
# The current task
string task_name
# The current task state 512: OK  >512 Task不正常
uint16 task_state
# device module state 每一位代表一个设备模块的状态 0正常 1不正
uint32 module_mask

# The amount of free RAM in gigabytes
float32 free_ram
# The total available RAM in gigabytes
float32 total_ram
# The amount of free disk space in gigabytes
int32 free_hdd
#
float32 cpu_load
float32 cpu_temp
#
float32 gpu_load
float32 gpu_temp
# 0 -> No GPS connected
# 1 -> No position information, GPS is connected
# 2 -> 2D position
# 3 -> 3D position
# 4 -> DGPS/SBAS aided 3D position
# 5 -> TK float, 3D position
# 6 -> TK Fixed, 3D position
# 7 -> Static fixed, typically used for base stations
# 8 -> PPP, 3D position
uint8 hw_api_gnss_fix_type
# Number of satellites used for gnss solution
uint8 hw_api_gnss_num_sats
# Estimated accuracy of the gnss solution (in meters)
float32 hw_api_gnss_pos_acc

# Rate of the gnss status message
float32 hw_api_gnss_status_hz

# Battery voltage in volts
float32 battery_volt
# Battery current in amperes
float32 battery_curr
# Estimate of the drained battery power in watthours
float32 battery_wh_drained
# Current collective thrust relative to max. thrust (i.e. between 0 and 1)
float32 thrust
# Current estimated mass of the vehicle
float32 mass_estimate
# Nominal mass of the vehicle
float32 mass_set


# True if the UAV is flying and there are no emergency or safety maneuvers taking place
bool flying_normally
# True if the UAV is currently controlled by the RC
bool rc_mode
# True if the UAV is currently flying to a goal waypoint
bool have_goal
# True if the UAV is currently following a trajectory (implies have_goal == true)
bool tracking_trajectory
# True if the control pipeline is ready to receive and execute waypoints and trajectories
bool callbacks_enabled
# True if collision avoidance with other UAVs using the NimbRo network is enabled
bool collision_avoidance_enabled
# True if the UAV is currently performing a maneuver to avoid a collision with another UAV
bool avoiding_collision
# True if the UAV is ready to take off
bool automatic_start_can_takeoff

# The number of other UAVs whose predicted trajectory is available to this one (for collision avoidance purposes)
uint16 num_other_uavs
